package com.giCompiler.business;

import java.sql.Date;
import java.util.ArrayList;
import java.util.List;

import com.giCompiler.dao.UsuarioDao;
import com.giCompiler.bean.Usuario;
import com.giCompiler.exception.BusinessException;

public class CadastrarUsuarioBusiness {
	
	public void cadastrarUsuarioBusiness(Usuario usuario) throws BusinessException{
		
		usuario.setDataCriacao(pegarDataAtual());
		usuario.setDataModificacao(pegarDataAtual());
        
        if(existeEmailUsuario(usuario) == false){
        	new UsuarioDao().inserir(usuario); 
		}else{
			System.out.println("Erro no cadastro! O email já está em uso.");
			throw new BusinessException("Erro no cadastro! O email já está em uso.");
		}
		
	}
	
	public boolean existeEmailUsuario(Usuario usuario){
		
		List <Usuario> usuarios = new ArrayList <Usuario>();
		UsuarioDao usuarioDao = new UsuarioDao();
				
		usuarios = usuarioDao.procurarUsuarioPorEmail(usuario.getEmail());
		
		if(usuarios.isEmpty() == true)
			return false;/*Não existe o email cadastrado no banco de dados*/
		else
			return true;/*Existe o email cadastrado no banco de dados*/	
				
	}
	
	public Date pegarDataAtual(){
		
		return new Date(System.currentTimeMillis());
		
	}
}
